Emerging Internet technologies promise increased integration between communications devices and server-based applications. Client-server applications have many advantages, and are increasingly popular. Such applications allow the majority of the application data to exist in one server location, increasing data security and eliminating unnecessary redundant data copies. Similarly, a majority of the application programming code and data files can exist in one location where it is more easily maintained by the application developers. Further, client-server applications can be designed so that rigorous processing tasks occur on the server-side, which allows robust applications to exist on smaller and less-powerful devices such as laptop computers and mobile handsets.
Client-server technologies have evolved to encompass mobile code, as exemplified in JavaScript® embedded in HTML. The capabilities of web-based applications are currently limited by the lack of functionality available to mobile code within the client-side execution environment. While languages such as JavaScript® could be designed to allow advanced client-side functionality, such an implementation is not ideal from a security standpoint. In an environment where security is not a concern, server-based applications would customize content based on location, synchronize remote files with client files, and link desktop functionality with server-based functions. However, Internet users are generally not sophisticated enough to make informed decisions regarding whether to allow websites to access various resources on the client. This is evidenced by the vast number of products designed to block malicious code from websites. Therefore, any advances in the functionality of server-based scripting might do more harm than good.